The present invention relates to the field of managing applications and devices within a network environment. More particularly, the present invention relates to the field of managing the operation of and the communication between devices within a network environment.
The IEEE 1394-1995 standard, xe2x80x9c1394-1995 Standard For A High Performance Serial Bus,xe2x80x9d is an international standard for implementing an inexpensive high-speed serial bus architecture which supports both asynchronous and isochronous format data transfers. Isochronous data transfers are real-time transfers which take place such that the time intervals between significant instances have the same duration at both the transmitting and receiving applications. Each packet of data transferred isochronously is transferred in its own time period. An example of an ideal application for the transfer of data isochronously would be from a video recorder to a television set. The video recorder records images and sounds and saves the data in discrete chunks or packets. The video recorder then transfers each packet, representing the image and sound recorded over a limited time period, during that time period, for display by the television set. The IEEE 1394-1995 standard bus architecture provides multiple channels for isochronous data transfer between applications. A six bit channel number is broadcast with the data to ensure reception by the appropriate application. This allows multiple applications to simultaneously transmit isochronous data across the bus structure. Asynchronous transfers are traditional data transfer operations which take place as soon as possible and transfer an amount of data from a source to a destination.
The IEEE 1394-1995 standard provides a high-speed serial bus for interconnecting digital devices thereby providing a universal I/O connection. The IEEE 1394-1995 standard defines a digital interface for the applications thereby eliminating the need for an application to convert digital data to analog data before it is transmitted across the bus. Correspondingly, a receiving application will receive digital data from the bus, not analog data, and will therefore not be required to convert analog data to digital data. The cable required by the IEEE 1394-1995 standard is very thin in size compared to other bulkier cables used to connect such devices. Devices can be added and removed from an IEEE 1394-1995 bus while the bus is active. If a device is so added or removed the bus will then automatically reconfigure itself for transmitting data between the then existing nodes. A node is considered a logical entity with a unique address on the bus structure. Each node provides an identification ROM, a standardized set of control registers and its own address space.
Media devices are being equipped with network interfaces allowing them to become part of a network such as the IEEE 1394-1995 serial bus network. In a home audio/video network incorporating such autonomous media devices it is possible that one or more such devices will be coupled together in a network with a personal computer, settop box or other device including a microprocessor. Currently, there is a lack of available interfaces and control applications which will efficiently manage the interaction and operation of the autonomous devices within such a network configuration. What is needed is an interface which allows a controlling device within a network configuration to efficiently control communications between the devices and the operation of the devices within the network. What is further needed is an interface which allows a controlling device within a network configuration to maximize the availability of devices within a network for completion of tasks and operations.
A media manager provides data flow management and other services for client applications on devices coupled together within a network. Preferably, these devices are coupled together within an IEEE 1394-1995 serial bus network. A device control module is generated for each available device for providing an abstraction for all of the capabilities and requirements of the device including the appropriate control protocol, physical connections and connection capabilities for the device. The media manager also manages the flow and format of data transfers between the devices on the network. Through an interface, a user accesses the media manager and enters functions which are to be completed using the devices coupled together on the network. If the appropriate devices are available, the media manager controls and manages the completion of the requested task. If the appropriate devices are not available, but the required subdevices are available in multiple devices, the media manager forms a virtual device from subdevices in multiple devices in order to complete the requested task. Once the appropriate devices and subdevices are assigned to a task, the media manager determines if the data to be transmitted needs to be converted from one format into another format. If necessary, the media manager will also control the format conversion during the data transfer operation. The media manager also provides network enumeration and registry searching capabilities for client applications to find available services, physical devices and virtual devices.